# 需求:
# 1、定义字典存储测试数据，包含账号和密码
# 提示:[{“username”：“13488888888”，“password”："123456”}，{“username”：""，“password”： "123456”}]
# 2、遍历数据进行测试账号和密码校验
# 3、当手机号为”13488888888”且密码为“123456”时，输出“登录成功”；否则“错误或密码错误”。

# 定义字典(非空)元素的列表
login_data = [
    {"username": "13488888888", "password": "123456"},
    {"username": "", "password": "123456"},
    {"username": "13800000001", "password": ""},
    {"username": "13800000001", "password": "123"}
]


# 思路：数据和业务分离的思路
# 1.先实现业务功能（函数）
def login(phone, pwd):
    """
    登录判断函数
    :param phone: 手机号
    :param pwd: 密码
    :return: 无
    """
    if phone == "13488888888" and pwd == "123456":
        print("登录成功")
    else:
        print("登录失败")


# 2再构造数据进行验证
num = 1  # 计数器
for i in login_data:
    # 获取账号密码
    phone = i.get("username")
    pwd = i.get("password")
    print(f"第{num}次测试")
    # 调用函数
    login(phone, pwd)
    num += 1  # 调用一次计数器增1
# 参数作用：灵活性、重用性
# 结论：
# 1.定义有形参的函数，增强代码的灵活性和重用性
# 2.定义函数参数叫形参，调用函数参数叫实参

